﻿// See https://aka.ms/new-console-template for more information
using System;

class Program
{
    static void Main()
    {
        var types = new (string TypeName, Type Type, int Size, object MinValue, object MaxValue)[]
        {
            ("sbyte", typeof(sbyte), sizeof(sbyte), sbyte.MinValue, sbyte.MaxValue),
            ("byte", typeof(byte), sizeof(byte), byte.MinValue, byte.MaxValue),
            ("short", typeof(short), sizeof(short), short.MinValue, short.MaxValue),
            ("ushort", typeof(ushort), sizeof(ushort), ushort.MinValue, ushort.MaxValue),
            ("int", typeof(int), sizeof(int), int.MinValue, int.MaxValue),
            ("uint", typeof(uint), sizeof(uint), uint.MinValue, uint.MaxValue),
            ("long", typeof(long), sizeof(long), long.MinValue, long.MaxValue),
            ("ulong", typeof(ulong), sizeof(ulong), ulong.MinValue, ulong.MaxValue),
            ("float", typeof(float), sizeof(float), float.MinValue, float.MaxValue),
            ("double", typeof(double), sizeof(double), double.MinValue, double.MaxValue),
            ("decimal", typeof(decimal), sizeof(decimal), decimal.MinValue, decimal.MaxValue),
        };

        Console.WriteLine($"{"类型",-10} | {"大小(字节)",-14} | {"最小值",-30} | {"最大值",-30}");
        Console.WriteLine(new string('-', 90));

        foreach (var item in types)
        {
            Console.WriteLine($"{item.TypeName,-10} | {item.Size,-14} | {item.MinValue,-30} | {item.MaxValue,-30}");
        }
    }
}